/* 
服务端渲染(模板引擎)  如拉钩网 https://www.lagou.com
1.服务器渲染，后端嵌套模板，后端渲染板，SSR(后端把页面组装)
a.做好静态页面，动态效果,
b.把前端代码提供给后端，后端要把静态html以及里面的假数据给删掉通过模板进行动态生成html的内容

用ejs模板做服务端渲染

npm i ejs
需要在应用中进行如下设置才能让 Express 渲染模板文件:
views,放模板文件的目录，比如:app.set('views'，'./views”)
view engine,模板引擎，比如:app.set('view engine','ejs”)


const ejs = require('ejs');
app.set('view engine','ejs')
app.set('views','./views')
app.get('/',(req,res)=>{
    res.render('index',{name:'zhj'})
})

<% %>流程控制标签(写的是if else，for)
<%= %>输出标签(原文输出HTML标签)
<%- %>输出标签(HTML会被浏览器解析)
<%# %>注释标签
<%-include('user/show',{user:user})%>导入公共的模板内容

2.前后端分离，BSR(前端中组装页面)
a.做好静态页面，动态效果。
b.json 模拟，ajax,动态创建页面,
C.真实接口数据，前后联调，
d.把前端提供给后端静态资源文件夹

*/

const express = require('express');
const app = express();
const HomeRouter=require('./route/HomeRouter')
const LoginRouter=require('./route/LoginRouter')

// 配置模板引擎
app.set("views","./views")
app.set('view engine','ejs')



// 配置解析post参数的中间件-不用下载第三方，内置
app.use(express.urlencoded({extended:false}))  // 解析urlencoded格式的参数,username=zhj&password=123
app.use(express.json())  // 解析json格式的参数  {username:'zhj',password:'123'}
app.use(express.static('public'))
app.use("/home",HomeRouter)
app.use("/login",LoginRouter)
app.listen(3000, () => {
    console.log('Server is running on http://localhost:3000');
})